﻿'---------------------------------------> Clase creada por Diego Barillas <----------------------------------------

Public Class frmModificarImagenesEjercicio

    Public imagenInicial As String = "imagenINoSeleccionada" 'variable que almacena la imagen en tipo string
    Public imagenFinal As String = "imagenFNoSeleccionada" 'variable que almacena la imagen en tipo string
    Public imagenEnbyte1 As Byte() 'variable que almacena la imagen en tipo byte
    Public imagenEnbyte2 As Byte() 'variable que almacena la imagen en tipo byte
    Dim myImg As Image 'variable que almacena la imagen en tipo image
    Dim myImg2 As Image 'variable que almacena la imagen en tipo image

    Private Sub btnAtras_Click(sender As Object, e As EventArgs) Handles btnAtras.Click

        For Each x As Control In Me.Parent.Controls.OfType(Of frmModificarEjercicio)()
            x.Visible = True
            Me.Visible = False
        Next

    End Sub

    Private Sub subirImagenFinal_Click(sender As Object, e As EventArgs) Handles subirImagenFinal.Click
        cargarImagenFinal() 'llama al metodo cargaImagenInicial

    End Sub

    Private Sub btnSubirImagenInicial_Click(sender As Object, e As EventArgs) Handles btnSubirImagenInicial.Click
        cargarImagenInicial() 'llama al metodo cargaImagenFinal

    End Sub

    Private Sub btnCancelar_Click(sender As Object, e As EventArgs) Handles btnCancelar.Click
        Dim frmcancelar As New frmCancelar 'crea una instancia del form modificar roles
        frmcancelar.Dock = DockStyle.Fill
        frmTransparente.AgregarContenido(frmcancelar)
        frmcancelar.agregarLabels("de la modificación del ejercicio?", "modificación", frmcancelar)
        frmTransparente.Show()
        Me.Hide()
        frmSecundario.Width = Screen.PrimaryScreen.WorkingArea.Width
        frmSecundario.Height = Screen.PrimaryScreen.WorkingArea.Height - Screen.PrimaryScreen.WorkingArea.Height * (60 / 100)
        frmSecundario.Location = New Point(Screen.PrimaryScreen.WorkingArea.X, Screen.PrimaryScreen.WorkingArea.Height * (32 / 100))
    End Sub

    Private Sub cargarImagenInicial()
        Try
            Me.abrirArchivo.ShowDialog() 'abre el openFileDialog
            If Me.abrirArchivo.FileName <> "" Then 'si el archivo abierto no es vacio
                imagenInicial = abrirArchivo.FileName 'guarda el archivo en la variable imagenInicial
                picBoxPosicionInicial.Load(imagenInicial) 'carga la imagen en el pictureBox
                lblImagenInicialNoSubida.Visible = False 'oculta el label que indica que no se ha subido ninguna imagen
                myImg = picBoxPosicionInicial.Image 'Guardar la imagen del PictureBox en el objeto Image
                imagenEnbyte1 = ImagenToBytes(myImg) 'llama al metodo que convierte la imagen a bytes

            End If
        Catch ex As Exception

        End Try

    End Sub


    Private Sub cargarImagenFinal()
        Try
            Me.abrirArchivo2.ShowDialog() 'abre el openFileDialog
            If Me.abrirArchivo2.FileName <> "" Then 'si el archivo abierto no es vacio
                imagenFinal = abrirArchivo2.FileName 'guarda el archivo en la variable imagenInicial
                picBoxPosicionFinal.Load(imagenFinal) 'carga la imagen en el pictureBox
                lbImagenFinalNoSubida.Visible = False 'oculta el label que indica que no se ha subido ninguna imagen
                myImg2 = picBoxPosicionFinal.Image 'Guardar la imagen del PictureBox en el objeto Image
                imagenEnbyte2 = ImagenToBytes(myImg2) 'llama al metodo que convierte la imagen a bytes


            End If
        Catch ex As Exception

        End Try


    End Sub


    Private Sub btnSiguiente_Click(sender As Object, e As EventArgs) Handles btnSiguiente.Click
        'Valida que se hayan seleccionado ambas imagenes'
        If imagenFinal = "Seleccione la imagen " Then 'si no se selecciono ninguna imagen
            imagenFinal = "imagenCancelada" 'se guarda como texto imagenCancelada
        End If
        If imagenInicial = "Seleccione la imagen " Then 'si no se selecciono ninguna imagen
            imagenInicial = "imagenCancelada" 'se guarda como texto imagenCancelada
        End If

        If imagenInicial = "imagenCancelada" Or imagenInicial = "imagenINoSeleccionada" Then 'si la image fue cancelada o no seleccionada
            myImg = picBoxPosicionInicial.Image 'agarra la imagen que ya estaba cargada desde el inicio
            imagenEnbyte1 = ImagenToBytes(myImg) 'convierte la imagen a bytes

        End If
        If imagenFinal = "imagenCancelada" Or imagenFinal = "imagenFNoSeleccionada" Then 'si la image fue cancelada o no seleccionada
            myImg2 = picBoxPosicionFinal.Image 'agarra la imagen que ya estaba cargada desde el inicio
            imagenEnbyte2 = ImagenToBytes(myImg2) 'convierte la imagen a bytes


        End If
        lblImagenes.Visible = False 'si las dos fueron seteadas con imagen quita el label
        Dim entro As Boolean = False
        For Each x As Control In Me.Parent.Controls.OfType(Of frmModificarAsociarMusculosAEjercicio)()

            x.Visible = True
            entro = True
        Next
        If Not entro Then
            Dim frm As New frmModificarAsociarMusculosAEjercicio
            frm.Dock = DockStyle.Fill
            frmTransparente.AgregarContenido(frm)
            frmTransparente.Show()
        End If
        Me.Visible = False
    End Sub


    Private Sub frmModificarImagenesEjercicio_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        lblImagenInicialNoSubida.Visible = False
        lbImagenFinalNoSubida.Visible = False
    End Sub
End Class
